"""
gtest.testing 模块实现

提供测试框架核心类型的实际实现，用于 IDE 类型检查和 MCPy 编译器。

@mcpy_headers: <gtest/gtest.h>
@mcpy_namespace: testing
"""

from mc.types import char_ptr, Pointer


# InitGoogleTest 函数真正接受的是 int* argc，但我们不希望 python 中操作指针，声明为 int 类型
# 使用 @mcpy_param_override 注解声明实际的 C++ 参数类型，编译时自动转换
# @mcpy_param_override: argc=Pointer[int]
def InitGoogleTest(argc: int, argv: Pointer[char_ptr]) -> None:
    """初始化 Google Test 框架

    Args:
        argc: 命令行参数数量
        argv: 命令行参数数组
    """
    pass


class Test:
    pass
